#pragma once

#include <iostream>
#include <string>
#include <ctime>

#define INFO 1
#define WARNING 2
#define ERROR 3
#define FATAL 4

#define LOG(level, message)  log(#level, message, __FILE__, __LINE__)

void log(std::string level, std::string message, std::string filename, int line)
{
    std::cout << "[" << level << "]"
              << "[" << time(nullptr) << "]"
              << "[" << message << "]"
              << "[" << filename << "]"
              << "[" << line << "]" << std::endl;
}